<?php
session_start();
require "include/dbms.inc.php";
require "include/template.inc.php";
require "include/setcontents.inc.php";
require "include/accesscontrol.inc.php";
require "include/formcontrol.inc.php";

accesscontrol::controllo_privilegi();

function displaydefault(){
    global $body;
    $body = new Template("dtml/visualizza_utenti.html");
    $result=setcontents::getResult("SELECT * FROM utente WHERE utente.email='{$_SESSION['user']['email']}'");
    $storico_prod_ut=new Template("dtml/storico_prodotti_public.html");//template appositamente creato per visualizzare lo storico prodotti nei dettagli profilo utente
             $prodotti = setcontents::getResult(
                "SELECT
                 storico_acquisti.spesa,
                 storico_acquisti.nome_prod,
                 storico_acquisti.q_pren as q,
                 storico_acquisti.data_acq as data
                    FROM
                    utente
                    LEFT JOIN
                    storico_acquisti
                    ON
                    utente.email=storico_acquisti.email_utente
                    WHERE storico_acquisti.email_utente='{$_SESSION['user']['email']}'
                    ORDER BY data DESC");

             $storico_prod_ut->setContent("prodotti",$prodotti);
             $body->setContent("storico_prod_ut", $storico_prod_ut->get());
    $_POST=$result[0];
    formcontrol::precform($body,"riepilogo");
}

if (!isset($_POST['page'])){
    $_POST['page']==0;
}

switch ($_POST['op']){
    case 'modifica':
        if ($_POST['page']==0){//visualizzazione
            $body = new Template("dtml/form.html");
            $advice= new Template("dtml/mod_adminmod.html");//mostra un avviso solo per l'operazione di modifica.
            $body->setContent("adminadvice",$advice->get());
            formcontrol::precform($body,"registrazione");
        }else{//modifica
            if(!formcontrol::field($body,$message,$style)){//la funzione effettua dei controlli sui dati inseriti nel form e stampa il messaggio $message con lo stile $style. In $body restituisce il form precompilato
                break;
            }
            list($giorno,$mese,$anno)=explode('/', $_POST['data_di_nascita']);
            $data=$anno.$mese.$giorno;
            $nome = addslashes($_POST['nome']);
            $cognome = addslashes($_POST['cognome']);
            $indirizzo = addslashes($_POST['indirizzo']);
            $citta = addslashes($_POST['citta']);
            $email = addslashes($_POST['email']);

            $oid1 = mysql_query("UPDATE utente SET
                                    nome='{$nome}',
                                    cognome='{$cognome}',
                                    data_di_nascita='{$data}',
                                    sesso='{$_POST['sesso']}',
                                    cod_fisc='{$_POST['cod_fisc']}',
                                    rec_tel='{$_POST['rec_tel']}',
                                    indirizzo='{$indirizzo}',
                                    citta='{$citta}',
                                    cap='{$_POST['cap']}',
                                    provincia='{$_POST['provincia']}',
                                    email='{$_POST['email']}'
                                    WHERE utente.email='{$_POST['email_bck']}'");

            if (strcmp($_POST['password'],"")){
                    $oid2 = mysql_query("UPDATE utente SET password=MD5('{$_POST['password']}') WHERE utente.email='{$email}'");
                }else{
                    $oid2 = TRUE;
                }

           if (!($oid1 and $oid2)){
                    $message="Modifica fallita, ci scusiamo per il disagio";
                    $style="alert";
                    formcontrol::precform($body,"registrazione");
                }else{
                    $message="Modifica eseguita con successo";
                    $style="message";
                    displaydefault();
                }
        }
        break;

    default:
        displaydefault();
}


setcontents::setTemplate();
setcontents::setMenu($message,$style);
setcontents::setBody($body);
$main->close();
?>
